Skip to main content

MR–OPV Vaccination Module


1. Introduction​

1.1 Overview​

The MR–OPV Vaccination Module is a dedicated component within SEIR designed to capture, validate, and transmit session-level Measles–Rubella (MR) and Oral Polio Vaccine (OPV) vaccination data from the field to the central system.

This document serves as a reference guide for all stakeholders, including development teams, implementing partners, program managers, and third-party vendors. It explains the module’s purpose, functionality, workflows, data structures, and integration points in a clear and implementation-agnostic manner.

The module is built to ensure:

  • Standardized data collection across all administrative levels
  • Support for both Fixed and Outreach vaccination sessions
  • Accurate reporting through validation and system checks
  • Seamless backend integration via RESTful APIs

2. Purpose of the MR–OPV Module​

The MR–OPV module is designed to:

  • Digitally capture session-level MR and OPV vaccination data
  • Support Fixed and Outreach vaccination sessions
  • Enable near real-time reporting from the field
  • Maintain standardized administrative hierarchy (District → Town → UC)
  • Provide clean, analyzable data to IRD and EPI Sindh

3. Scope​

In Scope​

  • Session-based MR–OPV vaccination reporting
  • Administrative hierarchy selection
  • Coverage data capture
  • GPS and timestamp capture
  • API-based data submission

4. Stakeholders & Users​

StakeholderRole
VaccinatorData entry and submission
Field SupervisorData verification
District / Town TeamsMonitoring & oversight
IRD Technical TeamBackend, analytics & validation
EPI Sindh ManagementProgram oversight

5. Functional Overview​

The MR–OPV module consists of a single-session data entry form that captures vaccination coverage at a site level and submits it to the SEIR backend.


6. MR–OPV Data Entry Form – Detailed Field Specification​

6.1 Administrative Hierarchy​

FieldTypeDescriptionMandatory
DistrictDropdownSelect districtYes
Town / TalukaDropdownFiltered by districtYes
Union CouncilDropdownFiltered by townYes

6.2 Session Details​

FieldTypeDescriptionMandatory
Session TypeDropdownFixed / OutreachYes
Site NameTextVaccination site nameYes
OnsiteCheckboxOnsite vaccination indicatorYes

6.3 Vaccination Coverage​

FieldTypeDescriptionMandatory
MR CoverageNumericTotal MR doses administeredYes
OPV CoverageNumericTotal OPV doses administeredYes

​

6.4 System-Captured Fields​

FieldSourceDescription
LatitudeGPSAuto-captured
LongitudeGPSAuto-captured
TimestampSystemEpoch (milliseconds)

7. Use Case Diagrams & Descriptions​

7.1 Use Case Actors​

  • Vaccinator
  • SEIR System
  • Backend API

7.2 Primary Use Cases​

Use Case 1: Submit MR–OPV Vaccination Session​

Actor: Vaccinator
Description: Vaccinator records MR and OPV coverage for a completed session.

Preconditions:

  • User is authenticated
  • Administrative master data available
  • GPS enabled

Main Flow:

  1. Vaccinator opens MR–OPV form
  2. Selects district, town, and UC
  3. Selects session type (Fixed / Outreach)
  4. Enters site name
  5. Enters MR and OPV coverage
  6. System captures GPS and timestamp
  7. Vaccinator submits the form
  8. System validates and sends data to backend API

Postconditions:

  • Data stored successfully in SEIR

​

​

Use Case 2: Validation Failure​

Actor: System

Scenario: Missing or invalid input data

Flow:

  1. User submits incomplete/invalid form
  2. System highlights validation errors
  3. Submission blocked until corrected

8. Process Flow Diagrams​

8.1 MR–OPV Data Submission Flow​


9. API Integration​

9.1 Endpoint Details​

  • Method: POST
  • Endpoint: /mrest/mr-opv/vaccination
  • Environment: Staging

9.2 Request Body​

{
"ucId": 101,
"districtId": 5,
"townId": 12,
"siteName": "Community Health Center",
"latitude": 24.8607,
"longitude": 67.0011,
"eventType": "Outreach",
"timestamp": 1762168905000,
"coverageMR": 45,
"coverageOPV": 20054,
"onsite": false
}

9.3 API Field Mapping​

FieldDescription
ucIdUnion Council identifier
districtIdDistrict identifier
townIdTown / Taluka identifier
siteNameVaccination site name
latitudeGPS latitude
longitudeGPS longitude
eventTypeFixed / Outreach
timestampEpoch milliseconds
coverageMRMR coverage count
coverageOPVOPV coverage count
onsiteOnsite indicator

10. Validation Rules​

  • Mandatory fields must not be empty
  • Coverage values must be numeric and non-negative
  • GPS must be available before submission
  • Session type must be selected
  • Administrative hierarchy must follow sequence

11. Roles & Permissions​

The MR–OPV module follows a role-based access control (RBAC) mechanism to ensure that only authorized users can access and submit MR–OPV campaign data.

11.1 Roles Definition​

Role NameDescription
VaccinatorRoutine vaccinator responsible for entering campaign and routine vaccination data
MR–OPV VaccinatorDedicated vaccinator role restricted to MR–OPV campaign activities only

​

​

11.2 Permissions Mapping​

​

RolePermission CodePermission Description
VaccinatorADD_MROPV_CAMPAIGNAllows routine vaccinators to add and submit MR–OPV campaign data
MR–OPV VaccinatorONLY_MROPV_CAMPAIGNAllows access exclusively to MR–OPV campaign module

​

​

11.3 Access Control Rules​

  • Users with the Vaccinator role and ADD_MROPV_CAMPAIGN permission can:

    • View MR–OPV module
    • Add and submit MR–OPV session data
    • Access other routine vaccination modules as permitted
  • Users with the MR–OPV Vaccinator role and ONLY_MROPV_CAMPAIGN permission can:

    • Access only the MR–OPV module
    • Submit MR–OPV campaign data
    • Not access other vaccination modules

​

12. Risks & Mitigations​

RiskMitigation
Incorrect coverage entryField validation & supervision
GPS unavailableUser prompt & retry
Duplicate submissionsBackend checks